<?php


class classeGaleria extends classePadrao
{
	var $conexao;
	var $query;
	var
		$cd_galeria,
		$nome,
		$detalhes,
		$cd_foto_galeria,
		$legenda,
		$imagem,
		$limit;

	function classeGaleria($sConexao)
	{
		if ($sConexao)
		{
			$this->conexao = $sConexao;
			return true;
		}
		else
			return false;
	}

	function excluir()
	{
		$this->query = "DELETE FROM GALERIA WHERE CD_GALERIA = " . $this->cd_galeria;
		if ($this->executarQuery())
		{
			$this->query = "DELETE FROM FOTO_GALERIA WHERE CD_GALERIA = " . $this->cd_galeria;
			return $this->executarQuery();
		}
		else
			return false;
	}

	function inserir()
	{
		$this->query = "INSERT INTO GALERIA " .
				"(CD_GALERIA,NOME,DETALHES) VALUES " .
				"('','".$this->nome."','".$this->detalhes."')";

		return $this->executarQuery();
	}

	function atualizar()
	{
		$this->query = "UPDATE GALERIA SET NOME='".$this->nome."', DETALHES='".$this->detalhes."' " .
				" WHERE CD_GALERIA = " . $this->cd_galeria;

		return $this->executarQuery();
	}
	
	function atualizarFoto()
	{
		$this->query = "UPDATE FOTO_GALERIA SET LEGENDA='".$this->legenda."' " .
				" WHERE CD_FOTO_GALERIA = " . $this->cd_foto_galeria;

		return $this->executarQuery();
	}
	
	function buscar($opcao)
	{
		$this->query ="SELECT GALERIA.*, COUNT(CD_FOTO_GALERIA) AS TOTAL_FOTOS FROM GALERIA";
        
		if($opcoes["comFotos"])
        {
        	$this->query .= " RIGHT JOIN FOTO_GALERIA ON FOTO_GALERIA.CD_GALERIA=GALERIA.CD_GALERIA";
        }
        else
        {
        	$this->query .= " LEFT JOIN FOTO_GALERIA ON FOTO_GALERIA.CD_GALERIA=GALERIA.CD_GALERIA";
        }			 		  
		$cond = " WHERE "; 

		if (strlen($this->cd_galeria))
		{
			$this->query .= $cond . " GALERIA.CD_GALERIA = " . $this->cd_galeria;
			$cond = " AND ";
		}
		
		$this->query .= " GROUP BY GALERIA.CD_GALERIA";
		
		if($opcao["order"])
		{
			$this->query .= " ORDER BY " . $opcao["order"]; 
		}
		else
		{
			$this->query .= " ORDER BY GALERIA.CD_GALERIA DESC";
		}
		
		if($this->limit)
		{
			$this->query .= " LIMIT " . $this->limit; 
		}
		
		if($opcao["offset"])
		{
			$this->query .= " OFFSET " . $opcao["offset"]; 
		}
		return $this->fetchInArray();
	}

	function limpar()
	{
		$this->cd_galeria = $this->legenda = $this->nome = $this->detalhes = 
		$this->cd_foto_galeria = $this->imagem = null;

		return true;
	}

	function buscarFotos()
	{
		$this->query = " SELECT * FROM FOTO_GALERIA";
		$cond = " WHERE ";
		
		if ($this->cd_galeria)
		{
			$this->query .= $cond . " CD_GALERIA = " . $this->cd_galeria;
			$cond = " AND ";
		}
		
		if ($this->cd_foto_galeria)
		{
			$this->query .= $cond . " CD_FOTO_GALERIA = " . $this->cd_foto_galeria;
			$cond = " AND ";
		}

		$this->query .= " ORDER BY CD_FOTO_GALERIA ";
		
		if($this->limit)
		{
			$this->query .= " LIMIT " . $this->limit; 
		}

		return $this->fetchInArray();
	}

	function excluirFoto()
	{
		$this->query = " DELETE FROM FOTO_GALERIA ";
		$cond = " WHERE ";
		
		if ($this->cd_galeria)
		{
			$this->query .= $cond . " CD_GALERIA = " . $this->cd_galeria;
			$cond = " AND ";
		}
		
		if ($this->cd_foto_galeria)
		{
			$this->query .= $cond . " CD_FOTO_GALERIA = " . $this->cd_foto_galeria;
			$cond = " AND ";
		}
		
		return $this->executarQuery();
		
	}

	function inserirFoto()
	{
		$this->query = " INSERT INTO FOTO_GALERIA 
						(CD_GALERIA, LEGENDA, IMAGEM)
						VALUES ('".$this->cd_galeria."', '".$this->legenda."', '".$this->imagem."') ";

		return $this->executarQuery();
	}
}
?>
